Qualcomm Technologies, Inc. SMB1390 Charger Specific Bindings

SMB1390 charge pump is paired with QTI family of standalone chargers to
enable a high current, high efficiency Li+ battery charging system.

=======================
Required Node Structure
=======================

SMB1390 Charger must be described in two levels of device nodes.

==================================
First Level Node - SMB1390 Charger
==================================

Charger specific properties:
- compatible
  Usage:      required
  Value type: <string>
  Definition: "qcom,smb1390-charger-psy" for master SMB1390 and
	      "qcom,smb1390-slave" for slave SMB1390.

- qcom,pmic-revid
  Usage:      required
  Value type: phandle
  Definition: Should specify the phandle of SMB's revid module. This is used
	      to identify the SMB subtype.

- io-channels
- io-channel-names
  Usage:      required
  Value type: <phandle>
  Definition: For details about IIO bindings see:
	      Documentation/devicetree/bindings/iio/iio-bindings.txt

- qcom,min-ilim-ua
  Usage:      optional
  Value type: <u32>
  Definition: Minimum ILIM supported, if requested ILIM goes below this value
	      disable SMB1390. If this values is not specified default minimum
	      ILIM is 1A.

- qcom,max-temp-alarm-degc
  Usage:      optional
  Value type: <u32>
  Definition: Maximum die temperature to trigger temp alarm. The value
	      must be one of the following:
	      80, 90, 105, 115.
	      If this value is not specified or is not one of the above
	      then default value is 105.

- qcom,max-cutoff-soc
  Usage:      optional
  Value type: <u32>
  Definition: SOC beyond which SMB1390 is kept disabled.
	      If this value is not specified then default value is 85%.

- qcom,parallel-output-mode
  Usage:      optional
  Value type: <u32>
  Definition: Defines the SMB1390 output connection topology.
		This should be one of the following:
		0 - If SMB1390 output is not connected to anything;
		1 - If SMB1390 output is connected to VPH_PWR;
		2 - If SMB1390 output is connected to VBATT.
		If this value is not specified then default value is 1.

- qcom,parallel-input-mode
  Usage:      optional
  Value type: <u32>
  Definition: Defines the SMB1390 input connection topology.
		This should be one of the following:
		0 - If SMB1390 input is not connected to anything;
		1 - If SMB1390 input is connected to USBIN;
		3 - If SMB1390 input is connected to USBMID.
		If this value is not specified then default value is 3.

================================================
Second Level Nodes - SMB1390 Charger Peripherals
================================================

Peripheral specific properties:
- interrupts
  Usage:      required
  Value type: <prop-encoded-array>
  Definition: Peripheral interrupt specifier.

- interrupt-names
  Usage:      required
  Value type: <stringlist>
  Definition: Interrupt names.  This list must match up 1-to-1 with the
	      interrupts specified in the 'interrupts' property.

=======
Example
=======

smb1390_charger: qcom,charge_pump {
	compatible = "qcom,smb1390-charger-psy";
	qcom,pmic-revid = <&smb1390_revid>;
	interrupt-parent = <&smb1390>;
	status = "disabled";

	io-channels = <&pm8150b_vadc ADC_AMUX_THM2>;
	io-channel-names = "cp_die_temp";

	qcom,core {
		interrupts = <0x10 0x0 IRQ_TYPE_EDGE_RISING>,
			     <0x10 0x1 IRQ_TYPE_EDGE_RISING>,
			     <0x10 0x2 IRQ_TYPE_EDGE_RISING>,
			     <0x10 0x3 IRQ_TYPE_EDGE_RISING>,
			     <0x10 0x4 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "switcher-off-window",
				  "switcher-off-fault",
				  "vph-ov-soft",
				  "ilim",
				  "temp-alarm";
	};
};
